LINQ Method Syntax হল LINQ কুয়েরি লেখার একটি পদ্ধতি যেখানে Method
এবং Lambda Expressions ব্যবহার করা হয়। এটি Extension Methods এর মাধ্যমে LINQ অপারেশনগুলোকে IEnumerable বা IQueryable সিরিজের উপর প্রয়োগ করতে সহায়ক। Method Syntax ব্যবহার করলে Where
, Select
, OrderBy
, GroupBy
ইত্যাদি মেথডগুলো কল করা হয়, যা স্ট্রং টাইপড এবং সহজবোধ্য কোডিংয়ের সুযোগ প্রদান করে।
List<int> numbers = new List<int> { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
// Where মেথড ব্যবহার করে even সংখ্যাগুলি বের করা
var evenNumbers = numbers.Where(num => num % 2 == 0);
foreach (var num in evenNumbers)
{
Console.WriteLine(num); // Output: 2, 4, 6, 8, 10
}
এখানে Where
মেথড ব্যবহার করে even numbers বের করা হয়েছে।
List<string> names = new List<string> { "Alice", "Bob", "Charlie", "David", "Eve" };
// Select মেথড ব্যবহার করে নামের প্রথম অক্ষর বের করা
var initials = names.Select(name => name[0]);
foreach (var initial in initials)
{
Console.WriteLine(initial); // Output: A, B, C, D, E
}
এখানে Select
মেথড ব্যবহার করে প্রতিটি নামের প্রথম অক্ষর বের করা হয়েছে।
List<int> numbers = new List<int> { 5, 3, 8, 1, 9, 2, 4, 7, 6 };
// OrderBy মেথড ব্যবহার করে সংখ্যাগুলি সাজানো
var sortedNumbers = numbers.OrderBy(num => num);
foreach (var num in sortedNumbers)
{
Console.WriteLine(num); // Output: 1, 2, 3, 4, 5, 6, 7, 8, 9
}
এখানে OrderBy
মেথড ব্যবহার করে সংখ্যাগুলিকে ছোট থেকে বড় হিসেবে সাজানো হয়েছে।
List<string> words = new List<string> { "apple", "banana", "cherry", "apricot", "blueberry" };
// GroupBy মেথড ব্যবহার করে প্রথম অক্ষরের ভিত্তিতে শব্দগুলিকে গ্রুপ করা
var groupedWords = words.GroupBy(word => word[0]);
foreach (var group in groupedWords)
{
Console.WriteLine(group.Key); // Output: a, b
foreach (var word in group)
{
Console.WriteLine(word); // Output: apple, apricot, banana, blueberry
}
}
এখানে GroupBy
মেথড ব্যবহার করে শব্দগুলোকে তাদের প্রথম অক্ষরের ভিত্তিতে গ্রুপ করা হয়েছে।
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// Any মেথড ব্যবহার করে ডেটা চেক করা যে কোনো সংখ্যাটি 3 এর বেশি কিনা
bool hasGreaterThanThree = numbers.Any(num => num > 3);
Console.WriteLine(hasGreaterThanThree); // Output: True
এখানে Any
মেথড ব্যবহার করে যাচাই করা হয়েছে যে কোনো সংখ্যা ৩ এর বেশি কি না।
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// FirstOrDefault মেথড ব্যবহার করে 6 এর চেয়ে বড় প্রথম সংখ্যা বের করা
var firstGreaterThanFive = numbers.FirstOrDefault(num => num > 5);
Console.WriteLine(firstGreaterThanFive); // Output: 0 (যেহেতু 6 এর চেয়ে বড় কোনো সংখ্যা নেই)
এখানে FirstOrDefault
মেথড ব্যবহার করে প্রথম সংখ্যাটি খুঁজে বের করা হয়েছে যা ৫ এর বেশি।
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// Sum মেথড ব্যবহার করে সংখ্যাগুলির যোগফল বের করা
var totalSum = numbers.Sum();
Console.WriteLine(totalSum); // Output: 15
এখানে Sum
মেথড ব্যবহার করে সংখ্যাগুলির যোগফল বের করা হয়েছে।
LINQ Method Syntax হল LINQ এর একটি শক্তিশালী এবং অত্যন্ত জনপ্রিয় পদ্ধতি যা Lambda Expressions এবং Extension Methods ব্যবহার করে ডেটা কুয়েরি এবং ম্যানিপুলেশন করতে সহায়ক। এটি ডেভেলপারদের ডেটার উপর কার্যকরী এবং ফাংশনাল প্রোগ্রামিং স্টাইলে কোড লেখার সুযোগ দেয়। Method Syntax কোডকে অনেক বেশি পরিষ্কার এবং রিডেবল করে, তবে কিছু জটিল কুয়েরি লেখার সময় এটি আরও কঠিন হতে পারে।
common.read_more